from pyspark import SparkConf, SparkContext

if __name__ == '__main__':
    # 构建SparkConf对象
    conf = SparkConf().setAppName("test").setMaster("local[*]")
    # 构建SparkContext执行环境入口对象
    sc = SparkContext(conf=conf)

    rdd = sc.parallelize([1, 1, 1, 2, 2, 3, 3, 3])

    rdd = rdd.distinct()
    """
    distinct:去重元素
    接受一个参数，分区数量，一般不填写，可视为无参算子
    """
    print(rdd.collect())

    rdd2 = sc.parallelize([("a", 1), ("a", 1), ("a", 3)])
    rdd2 = rdd2.distinct()

    """
    其他类型也是可以去重的
    """

    print(rdd2.collect())